package cn.demoncat.util.web.constant;

import java.util.regex.Pattern;

/**
 * IP常量
 * 
 * @author 延晓磊
 *
 * @since 2020年5月7日
 */
public class IpConstant {

	/**
	 * IP类型
	 * 
	 * @author 延晓磊
	 *
	 * @since 2020年5月7日
	 */
	public interface Type{
		
		/**
		 * 国内：包含省市
		 */
		String INLAND = "1";
		/**
		 * 国外：可能包含省
		 */
		String FOREIGN = "2";
		/**
		 * 本机/内网
		 */
		String INTRANET = "8";
		/**
		 * 未知/错误地址
		 */
		String UNKNOWN = "9";
	}
	
	/**
	 * 任意IP
	 */
	public static final String ANYHOST = "0.0.0.0";
	/**
	 * 本地IP
	 */
	public static final String LOCALHOST = "127.0.0.1";
	/**
	 * 未知IP
	 */
	public static final String UNKNOWN = "0:0:0:0:0:0:0:1";
	/**
	 * IP正则
	 */
	public static final Pattern IP_PATTERN = Pattern.compile("\\d{1,3}(\\.\\d{1,3}){3,5}$");
	/**
	 * 内网IP正则
	 */
	public static final Pattern INTRANET_PATTERN = Pattern.compile("(10|172|192)(\\.\\d{1,3}){3}$");
	
	/**
	 * 未知
	 */
	public static final String COUNTRY_TEXT_UNKNOWN = "未知";
	/**
	 * 内网IP
	 */
	public static final String COUNTRY_TEXT_INTRANET = "内网";
	/**
	 * 中国
	 */
	public static final String COUNTRY_TEXT_CN = "中国";
}
